The present invention relates to translating a first number to a second number. More specifically, the present invention relates to a method and apparatus for translating a first number to a second number by querying the contents of tables within a database.
A majority of the new and enhanced telephone services provided by telecommunications service providers depend principally upon the translation of a number dialed by a subscriber into a logically derived target telephone number (also referred to as a xe2x80x9crouting numberxe2x80x9d). The number of steps required to determine the target telephone number which corresponds to a dialed number may vary depending upon the service provided. For example, if the target telephone number may be determined based solely upon one variable associated with the dialed number (i.e., the number dialed the geographic location where the telephone call originated, the number assigned to the telephone used to dial the number, the time of day a particular number is dialed, or the area code of the dialed number), the target telephone number may be determined after the single step of identifying this one variable. However, if the corresponding target telephone number varies depending upon the specific combination of more than one variable associated with the dialed number (i.e., the area code of the dialed number, the time of day the number is dialed, and whether the caller is among the first 100 people to dial the number), multiple steps may be required to identify each of these variables and determine the corresponding target telephone number.
One known method for translating a dialed number to a corresponding target telephone number entails executing the appropriate translation steps as computer program code segments (software) known as xe2x80x9cservice logicxe2x80x9d. For example when a subscriber dials an 800 telephone number, the switch servicing this dialed number sends a query to a database such as a network control processor (NCP). The NCP then executes service logic software to determine the target telephone number which corresponds to the dialed 800 number and sends the determined target telephone number to the switch. The switch then uses the target telephone number received from the NCP (rather than the 800 telephone number originally dialed by the subscriber) to complete the subscriber""s telephone call.
One of the drawbacks of translating numbers using service logic software relates to the fact that the software must usually be specifically tailored for a particular telephone service. If a customer wishes to modify a telephone service, the service logic software which implements that service will usually need to be rewritten and the rewritten software will most likely need to be tested and debugged. The amount of time required to modify/test the service logic software and implement the service may be unacceptably longer than the amount of time the customer desires.
Thus, a need exists for a technique which solves the above described-problems.
The present invention provides a method and apparatus for translating a first number (e.g., a number dialed by a telephone subscriber) to a second number (referred to as a routing number). An example of an apparatus in accordance with the present invention includes two broad functional components: 1) tables of translation information stored within a database and 2) application software. Upon receiving a query requesting the translation of a dialed number to a routing number, the application software uses information within the received query to query the tables of translation information in order to find the correct routing number. The routing number is then sent to the requester.